/* 
    generator 函数 返回的迭代器
    内部的 yield 除了可以给外部返回数据，还可以想内部传递数据
*/

function* run() {
    
    let a = yield '1';
    console.log(a); // a 是下一次next调用时候传递的值

    let b = yield '2';
    console.log(b);

    let c = yield '3';
    console.log(c);


}

const it = run();

console.log(it.next());
console.log(it.next('外部传递的数据1'));
console.log(it.next('外部传递的数据2'));
console.log(it.next('外部传递的数据3'));